﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified">
  <xsd:element name="manifest">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="Name" type="xsd:string"  />
        <xsd:element name="Description" type="xsd:string" nillable="true"/>
        <xsd:element name="Version" type="xsd:string" />
        <xsd:element name="Kind" type="xsd:string" />
        <xsd:choice maxOccurs="1" minOccurs="1" >
          <xs:element name="Strategy" />
          <xs:element name="T4Template" />
          <xs:element name="ProjectTemplate" />
          <xs:element name="Models" />
          <xs:element name="System" />
          <xs:element name="Error" />
        </xsd:choice>
        <xsd:element name="Authors" minOccurs="0">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="Author" type="xsd:string"/>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="RequireLicenseAcceptance" type="xsd:boolean"  default="false"/>
        <xsd:element name="LicenseUrl" type="xsd:string"  nillable="true"/>
        <xsd:element name="Files" minOccurs="1">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="File" type="xsd:string" nillable="false"/>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xs:schema>